<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <meta name="renderer" content="webkit|ie-comp|ie-stand">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
    <meta http-equiv="Cache-Control" content="no-siteapp" />
    <link rel="Bookmark" href="/favicon.ico" >
    <link rel="Shortcut Icon" href="/favicon.ico" />
    <!--[if lt IE 9]>
    <script type="text/javascript" src="lib/html5shiv.js"></script>
    <script type="text/javascript" src="lib/respond.min.js"></script>
    <![endif]-->
    <link rel="stylesheet" type="text/css" href="static/h-ui/css/H-ui.min.css" />
    <link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/H-ui.admin.css" />
    <link rel="stylesheet" type="text/css" href="lib/Hui-iconfont/1.0.8/iconfont.css" />
    <link rel="stylesheet" type="text/css" href="static/h-ui.admin/skin/default/skin.css" id="skin" />
    <link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/style.css" />
    <!--[if IE 6]>
    <script type="text/javascript" src="lib/DD_belatedPNG_0.0.8a-min.js" ></script>
    <script>DD_belatedPNG.fix('*');</script>
    <![endif]-->
    <title>订单列表</title>
</head>
<style>
    .table>tbody>tr>td{
        text-align:center;
    }
</style>
<body>

<div>
    <nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页 <span class="c-gray en">&gt;</span> 订单管理 <span class="c-gray en">&gt;</span> 订单列表 <a class="btn btn-success radius r" style="line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新" ><i class="Hui-iconfont">&#xe68f;</i></a></nav>
    <form class="page-container" id="form-search">
        <div class="text-c">
            订单号：<input type="text" name="orderNo" id="orderNo" placeholder="" style="width:120px" class="input-text">
            收货人：<input type="text" name="username" id="username" placeholder="" style="width:100px" class="input-text">
            订单状态：
            <select id="status" class="select-box" name="status" style="width:100px">
                <option value="">请选择</option>
                <option value="0">待部门负责人审批</option>
                <option value="9">待管理员审批</option>
                <option value="1">待付款</option>
                <option value="2">配货中</option>
                <option value="3">已完成</option>
                <option value="4">取消</option>
                <option value="5">无效</option>
                <%--<option value="6">退货</option>--%>
                <option value="7">部分发货</option>
                <option value="8">审批未通过</option>
            </select>
            下单时间：
            <input type="text" onfocus="WdatePicker({ maxDate:'#F{$dp.$D(\'maxDate\')}',dateFmt:'yyyy-MM-dd HH:mm:ss' })" id="minDate" name="minDate" class="input-text Wdate" style="width:160px;">
            -
            <input type="text" onfocus="WdatePicker({ minDate:'#F{$dp.$D(\'minDate\')}',dateFmt:'yyyy-MM-dd HH:mm:ss'})" id="maxDate" name="maxDate" class="input-text Wdate" style="width:160px;">
            <button name="" id="searchButton" type="submit" class="btn btn-success"><i class="Hui-iconfont">&#xe665;</i> 搜索</button>
        </div>
        <div class="cl pd-5 bg-1 bk-gray mt-20">
            <span class="l">
                <a href="javascript:;" onclick="datadel()" class="btn btn-danger radius"><i class="Hui-iconfont">&#xe6e2;</i> 批量删除</a>
                <%--<a href="javascript:;" onclick="orderPrint()" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe652;</i> 订单打印</a>--%>
            </span>
            <%--<span class="r">共有数据：<strong id="num">0</strong> 条</span>--%>
        </div>
        <div class="mt-20">
            <div class="mt-20" style="margin-bottom: 70px">
                <table class="table table-border table-bordered table-bg table-hover table-sort" width="100%">
                    <thead>
                    <tr class="text-c">
                        <th width="25"><input type="checkbox" name="" value=""></th>
                        <th width="80">订单号</th>
                        <th width="80">下单时间</th>
                        <th width="70">收货人</th>
                        <th width="100">总金额</th>
                        <th width="100">应付金额</th>
                        <th width="100">订单状态</th>
                        <th width="100">操作</th>
                    </tr>
                    </thead>
                </table>
            </div>
        </div>
    </form>
</div>

<!--_footer 作为公共模版分离出去-->
<script type="text/javascript" src="lib/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="lib/layer/2.4/layer.js"></script>
<script type="text/javascript" src="static/h-ui/js/H-ui.min.js"></script>
<script type="text/javascript" src="static/h-ui.admin/js/H-ui.admin.js"></script> <!--/_footer 作为公共模版分离出去-->

<!--请在下方写此页面业务相关的脚本-->
<script type="text/javascript" src="lib/My97DatePicker/4.8/WdatePicker.js"></script>
<script type="text/javascript" src="lib/datatables/1.10.0/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="lib/datatables/dataTables.colReorder.min.js"></script>
<script type="text/javascript" src="lib/laypage/1.2/laypage.js"></script>
<script type="text/javascript" src="lib/jquery.validation/1.14.0/jquery.validate.js"></script>
<script type="text/javascript" src="lib/jquery.validation/1.14.0/validate-methods.js"></script>
<script type="text/javascript" src="lib/common.js"></script>
<script type="text/javascript">
    var roleId;
    /*datatables配置*/
    $(document).ready(function () {
        $.ajax({
            url:"/user/getRoleId",
            type: 'GET',
            success:function (data) {
                if(data.success!=true){
                    layer.alert(data.message,{title: '错误信息',icon: 2});
                    return;
                }
                roleId = data.result;

                $('.table').DataTable({
                    serverSide: true,//开启服务器模式
                    "processing": true,//加载显示提示
                    "ajax": {
                        url:"/order/list",
                        type: 'GET',
                    },
                    "columns": [
                        { "data": null,
                            render : function(data,type, row, meta) {
                                return "<input name=\"checkbox\" value=\""+row.orderId+"\" type=\"checkbox\" value=\"\">";
                            }
                        },
                        { "data": "orderNo",
                            render:  function(data,type, row, meta) {
                                return "<a style=\"cursor:pointer;color: #0673b6;text-decoration: none;\" class=\"text-primary\" onclick=\"order_detail('"+row.orderId+"')\">"+data+"</a>";
                            }
                        },
                        { "data": "createTime",
                            render : function(data,type, row, meta) {
                                return date(data);
                            }},
                        { "data": "username"},
                        { "data": "totalAmount"},
                        { "data": "payment"},
                        { "data": "status",
                            render : function(data,type, row, meta) {
                                if(data==0){
                                    return "<span class=\"label label-primary radius td-status\">待部门负责人审批</span>";
                                }else if(data==1){
                                    return "<span class=\"label label-warning radius td-status\">待付款</span>";
                                } else if(data==2){
                                    return "<span class=\"label label-primary radius td-status\">配货中</span>";
                                }else if(data==3){
                                    return "<span class=\"label label-success radius td-status\">已完成</span>";
                                }else if(data==4){
                                    return "<span class=\"label label-defant radius td-status\">取消</span>";
                                }else if(data==5){
                                    return "<span class=\"label label-defant radius td-status\">无效</span>";
                                }else if(data==6){
                                    return "<span class=\"label label-defant radius td-status\">退货</span>";
                                }else if(data==7){
                                    return "<span class=\"label label-secondary radius td-status\">部分发货</span>";
                                } else if(data==8){
                                    return "<span class=\"label label-defant radius td-status\">审批未通过</span>";
                                } else{
                                    return "<span class=\"label label-defant radius td-status\">待管理员审批</span>";
                                }
                            }
                        },
                        {
                            "data": null,
                            render : function(data,type, row, meta) {
                                var deliver = "<a title=\"发货\" href=\"javascript:;\" onclick=\"order_deliver('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none;cursor:pointer\"><i class=\"Hui-iconfont\">&#xe603;</i></a>";
                                var cancel =  "<a title=\"取消订单\" href=\"javascript:;\" onclick=\"order_cancel('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none;cursor:pointer\"><i class=\"Hui-iconfont \">&#xe66b;</i></a>";
                                var del = "<a title=\"删除\" href=\"javascript:;\" onclick=\"order_del('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none;cursor:pointer\"><i class=\"Hui-iconfont\">&#xe6e2;</i></a>";
                                var pass = "<a title=\"审批通过\" href=\"javascript:;\" onclick=\"order_pass('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none;cursor:pointer\"><i class=\"Hui-iconfont\">&#xe6e1;</i></a>";
                                var refuse = "<a title=\"驳回\" href=\"javascript:;\" onclick=\"order_refuse('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none;cursor:pointer\"><i class=\"Hui-iconfont\">&#xe6dd;</i></a>";
                                var remark = "<a title=\"备注\" href=\"javascript:;\" onclick=\"order_remark('"+row.remark+"','"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none\"><i class=\"Hui-iconfont\">&#xe647;</i></a>";
                                var invalid = "<a title=\"无效\" href=\"javascript:;\" onclick=\"order_invalid('"+row.orderId+"')\" class=\"ml-5\" style=\"text-decoration:none\"><i class=\"Hui-iconfont\">&#xe631;</i></a>";
                                var set = "<a title=\"设置配货时间\" href=\"javascript:;\" onclick=\"order_set('"+row.orderId+"','"+row.pickingDays+"')\" class=\"ml-5\" style=\"text-decoration:none\"><i class=\"Hui-iconfont\">&#xe60c;</i></a>";

                                if (row.status == 0){
                                    if (roleId == 3){
                                        return cancel + del + pass + refuse + remark;
                                    } else{
                                        return cancel + del + remark;
                                    }

                                }else if (row.status == 1){
                                    return cancel + del + remark;
                                }else if (row.status == 2){
                                    return  deliver+ invalid + del + set + remark;
                                }else if (row.status == 3){
                                    return  invalid + del + remark;
                                }else if ( row.status == 7){
                                    return  deliver + invalid + set + del + remark;
                                }else if (row.status == 9){
                                    if (roleId == 1 || roleId == 2){
                                        return  cancel + del + pass + refuse + remark;
                                    } else{
                                        return  cancel + del + remark;
                                    }
                                }else{
                                    return  del + remark;
                                }
                            }
                        }
                    ],
                    "aaSorting": [[ 2, "desc" ]],//默认第几个排序
                    "bStateSave": false,//状态保存
                    "aoColumnDefs": [
                        {"orderable":false,"aTargets":[0,7]}// 制定列不参与排序
                    ],
                    language: {
                        url: '/lib/datatables/Chinese.json'
                    },
                    colReorder: true,
                    searching:false
                });


            },
            error:function(XMLHttpRequest){
                if(XMLHttpRequest.status!=200){
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            }
        });

    });

    $("#form-search").validate({
        onkeyup:false,
        focusCleanup:false,
        success:"valid",
        submitHandler:function(form){
            var orderNo= $('#orderNo').val();
            var status= $('#status').val();
            var username= $('#username').val();
            var minDate= $('#minDate').val();
            var maxDate= $('#maxDate').val();
            var param = {
                "orderNo": orderNo,
                "status": status,
                "username": username,
                "minDate": minDate,
                "maxDate":maxDate
            };
            var table = $('.table').DataTable();
            table.settings()[0].ajax.data = param;
            console.log(table.settings()[0].ajax.data);
            table.ajax.url( '/order/list' ).load();
        }
    });

    var oldRemark="";
    function order_remark(message,id){
        oldRemark=message;
        orderId=id;
        layer_show("备注","order-remark",500,250);
    }

    /*orderCount();

    function orderCount() {
        $.ajax({
            url:"/order/count",
            type: 'GET',
            success:function (data) {
                if(data.success!=true){
                    layer.alert(data.message,{title: '错误信息',icon: 2});
                    return;
                }
                $("#num").html(data.result);
            },
            error:function(XMLHttpRequest){
                if(XMLHttpRequest.status!=200){
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            }
        });
    }*/

    var orderId="";
    var pickingDays = "";
    function orderPrint() {
        var cks=document.getElementsByName("checkbox");
        var count=0;
        for(var i=0;i<cks.length;i++){
            if(cks[i].checked){
                orderId = cks[i].value;
                count++;
            }
        }
        if(count==0){
            layer.msg('您还未勾选任何数据!',{icon:5,time:3000});
            return;
        }else if(count>1){
            layer.msg('所选订单不属于同一订单!',{icon:5,time:3000});
            return;
        }

        var index = layer.open({
            type: 2,
            title: '打印预览',
            content: 'order-print'
        });
        layer.full(index);
    }


    function order_detail(id) {
        orderId = id;
        var index = layer.open({
            type: 2,
            title: '订单详情',
            content: 'order-detail'
        });
        layer.full(index);
    }

    function order_deliver(id){
        orderId=id;
        layer_show("发货","order-deliver",390,220);
    }

    function order_set(id,days){
        orderId=id;
        pickingDays = days;
        layer_show("设置配货时间","order-set",390,220);
    }

    function order_pass(id){
        layer.confirm('确认要通过该订单吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'GET',
                url: '/order/pass/'+id,
                dataType: 'json',
                success: function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    refresh();
                    layer.msg('审批成功!',{icon:1,time:1000});
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    function order_refuse(id){
        layer.confirm('确认要驳回该订单吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'GET',
                url: '/order/refuse/'+id,
                dataType: 'json',
                success: function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    refresh();
                    layer.msg('审批成功!',{icon:1,time:1000});
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    /*订单-取消*/
    function order_cancel(id){
        layer.confirm('确认要取消该订单吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'GET',
                url: '/order/cancel/'+id,
                dataType: 'json',
                success: function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    refresh();
                    layer.msg('取消成功!',{icon:1,time:1000});
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    /*订单-无效*/
    function order_invalid(id){
        layer.confirm('确认要设置该订单为无效吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'GET',
                url: '/order/invalid/'+id,
                dataType: 'json',
                success: function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    refresh();
                    layer.msg('操作成功!',{icon:1,time:1000});
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    /*订单-删除*/
    function order_del(id){
        layer.confirm('确认要删除该订单吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'DELETE',
                url: '/order/del/'+id,
                dataType: 'json',
                success: function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    // orderCount();
                    refresh();
                    layer.msg('已删除!',{icon:1,time:1000});
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    /*批量删除*/
    function datadel() {
        var cks=document.getElementsByName("checkbox");
        var count=0,ids="";
        for(var i=0;i<cks.length;i++){
            if(cks[i].checked){
                count++;
                ids+=cks[i].value+",";
            }
        }
        if(count==0){
            layer.msg('您还未勾选任何数据!',{icon:5,time:3000});
            return;
        }
        /*去除末尾逗号*/
        if(ids.length>0){
            ids=ids.substring(0,ids.length-1);
        }
        layer.confirm('确认要删除所选的'+count+'条数据吗？',{icon:0},function(index){
            var index = layer.load(3);
            $.ajax({
                type: 'DELETE',
                url: '/order/del/'+ids,
                dataType: 'json',
                success:function(data){
                    layer.close(index);
                    if(data.success!=true){
                        layer.alert(data.message,{title: '错误信息',icon: 2});
                        return;
                    }
                    layer.msg('已删除!',{icon:1,time:1000});
                    // orderCount();
                    refresh();
                },
                error:function(XMLHttpRequest){
                    layer.close(index);
                    layer.alert('数据处理失败! 错误码:'+XMLHttpRequest.status,{title: '错误信息',icon: 2});
                }
            });
        });
    }

    function msgSuccess(content){
        layer.msg(content, {icon: 1,time:1000});
    }
</script>
</body>
</html>